#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QTcpServer> //服务端
#include <QTcpSocket> //客户端
#include <QSqlDatabase>
#include <QDebug>
#include <QMessageBox>
#include <QSqlError>
#include <QSqlQuery>

//从数据库查询的消息对象
class MyMsg{
public:
    QString Data[9];
    void ShowMyMsg();
};

class MyXml{
   public:

    //返回构造的xml数据
      static QString GetTextReplyXml( QString y);
      static QString GetImgReplyXml(QString id);
      static QString GetVoiceReplyXml(QString id);
      static QString GetVideoReplyXml(QString id,QString title,QString description);
      static QString GetArticlesReplyXml(QString url,QString picurl,int ArticleCount,QString Articles,QString Title,QString Description);
      MyXml(MyXml &x);//复制构造函数
      QString GetMsg();
      MyXml(QString x[256]);
      MyXml();
      void ShowMyData();
      void Start(QString x[256]);
      QString Data[256];
      QString Msg[256];
};

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    static QString GetXmlData(QString OldData);
    void SendMsg(QString xml);
    void SendTextMsg(QString x); //回复文本消息
    void SendRobotMsg();
    void ToReply();
    Widget(QWidget *parent = nullptr);
    ~Widget();
    QSqlDatabase *MyDataBase; //数据库查询对象
    QTcpServer *TcpServer;
    QTcpSocket *TcpSocket;
    void StartMySql();

private slots:
    void on_pushButton_clicked();

    void on_pushButton_2_clicked();

    void on_pushButton_3_clicked();

    void on_pushButton_4_clicked();

    void on_RobotReply_clicked();

    void on_commandLinkButton_clicked();

private:
    Ui::Widget *ui;
    QTcpSocket *Tcp;
//    MyXml xml;
};


QString GetMsgType(MyXml &m);

MyXml  GetXmlEle(QString OldData);
void ClearCreateTime(MyXml &x);
#endif // WIDGET_H
